package com.peanut.boot.config;

import com.peanut.boot.entiity.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @className: com.peanut.boot.config-> UserConfig
 * @description: 测试配置类中的是如何放在容器中的。 bean都是单例的
 * @author: chenhs
 * @createDate: 2021-09-20 22:24
 * @version: 1.0
 * 配置类本身就是组件，bean（组件）默认单例的，
 * proxyBeanMethods ：
 *      是否使用代理对象调用方法，使用后有就获取，没有创建，单例模式。
 *      true 单例 false多例, 默认true。
 *      如果设置为fasle 那么每次或者该组件就会跳过检查这组件是否实力化，而是直接新建一个组件。这样获取速度会快些，
 *      当我们的组件不存在被依赖关系推荐false.
 *
 *
 */
@Configuration(proxyBeanMethods = false)
public class UserConfig {
    /**
     * @Bean 注过得方法会以方法名为key存储到容器中。如果不想用方法名作为 key，可以自定义 例如：@Bean(name = "aa")
     * bean都是单例的
     */
    @Bean("user_01")
    public User setUser() {
        return new User("张三", "18");
    }

}
